home *** CD-ROM | disk | FTP | other *** search
/ Software USA 4 #8 / Software USA Volume 4.08.iso / mac / LifeStyles / ComicBase / ComicBase.sea / ComicBase 3 Mac Demo / ComicBase 3 Demo.rsrc / LENS_139_Select Titles < prev    next >
Text File  |  1998-02-04  |  16KB  |  93 lines

  1. ItemType: WIND
  2. Rect: 326,237,698,531
  3. Style: Dialog
  4. HasTitleBar: TRUE
  5. HasZoomBox: FALSE
  6. Name: Select Titles
  7. WhiteColor: -8739,-8739,-8739
  8. Script: --on windowEvent  wdID,wdName,objNo,objName,objValue¬¬Global titleList, selectedTitleNums¬global gWindowPositions, gListStartIndex¬global gListPage, gMultiListSelections¬global gShowOnlyMyTitles, gMyTitleList, gMyTitleIndexedList, gMyTitleIndex, gOldShowOnlyMyTitles¬¬---------------------¬-- This is window #22¬---------------------¬¬if objValue="Open" then ¬  set cursor to watch¬  if the short name of this background <> "Title" then ¬    lock screen¬    go cd 1 of bg "Title"¬  end if¬  ¬  -- Restore old window position¬  put OldWindowPosition(22) into windowRect¬  if windowRect = empty then centerWindow wdName¬  else wsSet "Select Titles","0","Rect",windowRect¬  ¬  put gShowOnlyMyTitles into gOldShowOnlyMyTitles -- Save old setting, but default to showing only my titles¬  put true into gShowOnlyMyTitles¬  set cursor to watch¬  send UpdateMyTitlesList to cd 2¬  ¬  wsSet "Select Titles","9","Hilite", not (gShowOnlyMyTitles)¬  wsSet "Select Titles","10","Hilite", gShowOnlyMyTitles¬  ¬  put empty into gMultiListSelections¬  ¬  put 0 into gListStartIndex¬  put the last item of selectedTitleNums into endSelect¬  ¬  ¬  if gShowOnlyMyTitles then¬    -- Build list of just the ones that are collected¬    put the number of lines of titleList into numLines¬    put xlate(MatCreate(1,numLines,"count"),comma,return) into linesList¬    put insColumn(titleList,lineslist,2,tab) into indexedList¬    put insColumn(indexedList,gHasIssuesList,3,tab) into indexedList¬    put selectLines(indexedList,3,"char","=1",tab) into gMyTitleIndexedList¬    put GetColumn(gMyTitleindexedList,1,1,tab) into gMyTitleList¬    put GetColumn(gMyTitleIndexedList,2,2,tab) into gMyTitleIndex¬    ¬    StoreLongField gMyTitleList,"MyTitleList",the short id of cd 1, true¬    ¬    repeat with x = 2 to 99¬      put (there is a fld ("MyTitlelist " & x - 1) of cd 1) into hasField¬      if not hasField then exit repeat¬      set cursor to busy   ¬      put the number of lines of fld ("MyTitlelist " & x) of cd 1 into test¬      if test = 0 then exit repeat¬      put the number of lines of bg fld ("MyTitlelist " & x - 1) of cd 1 into temp¬      put temp + (line (x - 1) of gListStartIndex) into lowerBound¬      put lowerBound into line x of gListStartIndex¬    end repeat¬  else¬    repeat with x = 2 to 99¬      put (there is a fld ("MyTitlelist " & x - 1) of cd 1) into hasField¬      if not hasField then exit repeat¬      set cursor to busy   ¬      put the number of lines of bg fld ("Titlelist " & x) of cd 1 into test¬      if test = 0 then exit repeat¬      put the number of lines of bg fld ("Titlelist " & x - 1) of cd 1 into temp¬      put temp + (line (x - 1) of gListStartIndex) into lowerBound¬      put lowerBound into line x of gListStartIndex¬    end repeat¬  end if¬  ¬  -- Figure out how the selection is broken up between pages¬  if the number of lines of gListStartIndex = 1 or the last item of selectedTitleNums <= line 2 of gListStartIndex then ¬    put selectedTitleNums into gMultiListSelections¬    put 1 into gListPage¬  else¬    put xlate(selectedTitleNums,comma,return) into theSelectList¬    repeat with x = the number of lines of gListStartIndex down to 2¬      set cursor to busy  ¬      put line x of gListStartIndex into thisStartNum¬      put selectLines(theSelectList,1,"N",">" & thisStartNum) into thisPageSelections¬      put selectLines(theSelectList,1,"N","≤" & thisStartNum) into theSelectList¬      if word 1 of thisPageSelections <> empty then ¬        put xlate(array2Cnst(thisPageSelections,"-",thisStartNum),return,comma) into temp¬        if the last char of temp = comma then delete the last char of temp¬        put temp into line x of gMultiListSelections¬        put x into gListPage¬      end if¬    end repeat¬    ¬    if word 1 of theSelectList <> empty then ¬      put 1 into gListPage¬      put xlate(theSelectList,return,comma) into temp¬      if the last char of temp = comma then delete the last char of temp¬      put temp into line 1 of gMultiListSelections¬    end if¬  end if¬  ¬  if gShowOnlyMyTitles then¬    wsSet "Select Titles","ComicTitles","Text", bg fld ("MyTitlelist " & gListPage) of cd 1¬    put "MyTitleList " & (gListPage + 1) into nextListPage¬    put true into nextIsDisabled¬    if there is a bg fld (nextListPage) of cd 1 then¬      if bg fld (nextListPage) of cd 1 <> empty then put false into nextIsDisabled¬    end if¬  else¬    wsSet "Select Titles","ComicTitles","Text", bg fld ("Titlelist " & gListPage) of cd 1¬    put "TitleList " & (gListPage + 1) into nextListPage¬    put true into nextIsDisabled¬    if there is a bg fld (nextListPage) of cd 1 then¬      if bg fld (nextListPage) of cd 1 <> empty then put false into nextIsDisabled¬    end if¬  end if¬  ¬  put (the number of lines of gListStartIndex > 1) into arrowsAreVisible¬  ¬  wsSet "Select Titles","Properties","i5_Visible:" & arrowsAreVisible & return & "i6_Visible:" & arrowsAreVisible & return & "i7_Visible:" & arrowsAreVisible & return & "ComicTitles_Selection:" & line gListPage of gMultiListSelections & return & "i5_Disabled:" & (gListPage = 1) & return & "i6_Disabled:" & nextIsDisabled & return & "PartLabel_Text:" & "Part " & gListPage & return ¬  ¬  put (wsget("Select Titles","ComicTitles","Selection") < 1) into noSelection¬  wsSet "Select Titles","OK","Disabled",noSelection¬  set cursor to arrow¬  ¬else if objValue="Close" then ¬  -- save the window position¬  put "22" & tab & wdName & tab & wsGet("Select Titles","0","Rect") into line 22 of gWindowPositions¬  ¬  -- Restore old setting of ShowOnlyMytitles¬  put  gOldShowOnlyMyTitles into  gShowOnlyMyTitles¬end if¬¬--end windowEvent¬¬¬¬¬¬
  9. Params: i4_Text
  10. Result: i3_SelectionText
  11.  
  12. ItemType: PUSH
  13. Rect: 286,265,358,285
  14. Disabled: TRUE
  15. Name: OK
  16. DefaultItem: TRUE
  17. AutoClose: TRUE
  18. Balloon: Click here to choose the selected titles.
  19. Script: --on mouseUp  wdID,wdName,objNo,objName,objValue¬Global SelectedTitleNums, gListStartIndex, gMultiListSelections¬global gShowOnlyMyTitles, gMyTitleIndex¬¬set cursor to watch¬put xlate(line 1 of gMultiListSelections,comma,return) into selectedTitleNums¬repeat with x = 2 to the number of lines of gMultiListSelections¬  put xlate(line x of gMultiListSelections,comma,return) into thePageSelections¬  if word 1 of thePageSelections <> empty then¬    put line x of gListStartIndex into pageStartPos¬    put array2Cnst(thePageSelections,"+",pageStartPos) into adjustedList¬    put return & adjustedList after selectedTitleNums¬  end if¬end repeat¬repeat while the first char of selectedTitleNums = return¬  delete the first char of selectedTitleNums¬end repeat¬¬if gShowOnlyMyTitles then¬  -- the selections are reallly indexes in gMyTitleIndex¬  repeat with x = 1 to the number of lines of selectedTitleNums¬    set cursor to busy¬    put line (line x of selectedTitleNums) of gMyTitleIndex into line x of selectedTitleNums¬  end repeat¬end if¬¬put xlate(selectedTitleNums,return,comma) into selectedTitleNums¬--end mouseUp¬¬
  20.  
  21. ItemType: PUSH
  22. Rect: 200,265,272,285
  23. AutoSize: FALSE
  24. Name: Cancel
  25. CancelItem: TRUE
  26. AutoClose: TRUE
  27. Balloon: Click here to exit without choosing any titles.
  28.  
  29. ItemType: LIST
  30. Rect: 10,44,358,254
  31. TextFont: Geneva
  32. TextSize: 10
  33. Name: ComicTitles
  34. DoubleClickItem: 1
  35. KeyScroll: TRUE
  36. Text: 
  37. Balloon: This is a list of all the titles in the ComicBase.
  38. Script: --on mouseUp  wdID,wdName,objNo,objName,objValue¬¬global gMultiListSelections, gListPage¬¬put wsGet("Select Titles","ComicTitles","Selection") into line gListPage of gMultiListSelections¬¬wsSet "Select Titles","OK","Disabled",((word 1 of gMultiListSelections) = empty)¬--end mouseUp
  39.  
  40. ItemType: TEXT
  41. Rect: 13,7,354,22
  42. TextFont: Geneva
  43. TextSize: 10
  44. AutoSize: FALSE
  45. Name: Prompt
  46. WhiteColor: -8739,-8739,-8739
  47.  
  48. ItemType: PICT
  49. Rect: 10,266,27,283
  50. Visible: FALSE
  51. Disabled: TRUE
  52. Name: Prev
  53. Script: --on mouseUp  wdID,wdName,objNo,objName,objValue¬global gListStartIndex, gMultiListSelections, gListPage¬¬set cursor to watch¬put wsGet(wdID,"ComicTitles","Selection") into temp¬if temp = 0 then put empty into temp¬put temp into line gListPage of gMultiListSelections¬¬subtract 1 from gListPage¬¬if gShowOnlyMyTitles then¬  wsSet wdID,"ComicTitles","Text", bg fld ("MyTitlelist " & gListPage) of cd 1¬else¬  wsSet wdID,"ComicTitles","Text", bg fld ("Titlelist " & gListPage) of cd 1¬end if¬¬¬put false into nextIsDisabled¬wsSet wdID,"ComicTitles","Text", bg fld ("Titlelist " & gListPage) of cd 1¬put false into nextIsDisabled¬wsSet wdID,"Properties","ComicTitles_Selection:" & line gListPage of gMultiListSelections & return & "i5_Disabled:" & (gListPage = 1) & return & "i6_Disabled:" & nextIsDisabled & return & "PartLabel_Text:" & "Part " & gListPage¬¬--end mouseUp
  54.  
  55. ItemType: PICT
  56. Rect: 64,266,81,283
  57. Visible: FALSE
  58. Disabled: TRUE
  59. Name: Next
  60. Script: --on mouseUp  wdID,wdName,objNo,objName,objValue¬global gListPage, gMultiListSelections¬global gShowOnlyMyTitles¬¬set cursor to watch¬put wsGet(wdID,"ComicTitles","Selection") into temp¬if temp = 0 then put empty into temp¬put temp into line gListPage of gMultiListSelections¬¬add 1 to gListPage¬¬if gShowOnlyMyTitles then¬  wsSet wdID,"ComicTitles","Text", bg fld ("MyTitlelist " & gListPage) of cd 1¬  put "MyTitlelist " & gListPage + 1 into nextListPage¬else¬  wsSet wdID,"ComicTitles","Text", bg fld ("Titlelist " & gListPage) of cd 1¬  put "TitleList " & gListPage + 1 into nextListPage¬end if¬¬put true into nextIsDisabled¬if there is a bg fld (nextListPage) of cd 1 then¬  if bg fld (nextListPage) of cd 1 <> empty then put false into nextIsDisabled¬end if¬wsSet wdID,"Properties","ComicTitles_Selection:" & line gListPage of gMultiListSelections & return & "i5_Disabled:False" & return & "i6_Disabled:" & nextIsDisabled & return & "PartLabel_Text:" & "Part " & gListPage¬--end mouseUp
  61.  
  62. ItemType: TEXT
  63. Rect: 29,268,62,280
  64. TextFont: Geneva
  65. TextSize: 9
  66. Visible: FALSE
  67. Name: PartLabel
  68. WhiteColor: -8739,-8739,-8739
  69. TextAlign: Center
  70. Text: Part 1
  71.  
  72. ItemType: LBL
  73. Rect: 13,23,45,36
  74. TextFont: Geneva
  75. TextSize: 10
  76. Text: Show:
  77.  
  78. ItemType: RAD
  79. Rect: 50,24,119,37
  80. TextFont: Geneva
  81. TextSize: 10
  82. WhiteColor: -8739,-8739,-8739
  83. Name: All Titles
  84. Script: --on mouseUp  wdID,wdName,objNo,objName,objValue¬global selectedTitleNum, titleList, gMyTitleList¬global gShowOnlyMyTitles¬¬set cursor to watch¬¬put false into gShowOnlyMyTitles¬¬put empty into gMultiListSelections¬¬put 0 into gListStartIndex¬put the last item of selectedTitleNums into endSelect¬repeat with x = 2 to 4¬  set cursor to busy   ¬  put the number of lines of bg fld ("Titlelist " & x) of cd 1 into test¬  if test = 0 then exit repeat¬  put the number of lines of bg fld ("Titlelist " & x - 1) of cd 1 into temp¬  put temp + (line (x - 1) of gListStartIndex) into lowerBound¬  put lowerBound into line x of gListStartIndex¬end repeat¬¬-- Figure out how the selection is broken up between pages¬if the number of lines of gListStartIndex = 1 or the last item of selectedTitleNums <= line 2 of gListStartIndex then ¬  put selectedTitleNums into gMultiListSelections¬  put 1 into gListPage¬else¬  put xlate(selectedTitleNums,comma,return) into theSelectList¬  repeat with x = the number of lines of gListStartIndex down to 2¬    set cursor to busy  ¬    put line x of gListStartIndex into thisStartNum¬    put selectLines(theSelectList,1,"N",">" & thisStartNum) into thisPageSelections¬    put selectLines(theSelectList,1,"N","≤" & thisStartNum) into theSelectList¬    if word 1 of thisPageSelections <> empty then ¬      put xlate(array2Cnst(thisPageSelections,"-",thisStartNum),return,comma) into temp¬      if the last char of temp = comma then delete the last char of temp¬      put temp into line x of gMultiListSelections¬      put x into gListPage¬    end if¬  end repeat¬  ¬  if word 1 of theSelectList <> empty then ¬    put 1 into gListPage¬    put xlate(theSelectList,return,comma) into temp¬    if the last char of temp = comma then delete the last char of temp¬    put temp into line 1 of gMultiListSelections¬  end if¬end if¬¬wsSet wdID,"ComicTitles","Text", bg fld ("Titlelist " & gListPage) of cd 1¬put "TitleList " & (gListPage + 1) into nextListPage¬put true into nextIsDisabled¬if there is a bg fld (nextListPage) of cd 1 then¬  if bg fld (nextListPage) of cd 1 <> empty then put false into nextIsDisabled¬end if¬¬put (the number of lines of gListStartIndex > 1) into arrowsAreVisible¬¬wsSet wdID,"Properties","i5_Visible:" & arrowsAreVisible & return & "i6_Visible:" & arrowsAreVisible & return & "i7_Visible:" & arrowsAreVisible & return & "ComicTitles_Selection:" & line gListPage of gMultiListSelections & return & "i5_Disabled:" & (gListPage = 1) & return & "i6_Disabled:" & nextIsDisabled & return & "PartLabel_Text:" & "Part " & gListPage & return & "OK_Disabled:False" & return¬¬¬--end mouseUp
  85.  
  86. ItemType: RAD
  87. Rect: 130,24,224,37
  88. TextFont: Geneva
  89. TextSize: 10
  90. WhiteColor: -8739,-8739,-8739
  91. Name: Titles in Stock
  92. Hilite: TRUE
  93. Script: --on mouseUp  wdID,wdName,objNo,objName,objValue¬global selectedTitleNum, titleList, gMyTitleList¬global gShowOnlyMyTitles¬¬set cursor to watch¬put true into gShowOnlyMyTitles¬¬send UpdateMyTitlesList to cd 2¬¬put empty into gMultiListSelections¬¬put 0 into gListStartIndex¬put the last item of selectedTitleNums into endSelect¬repeat with x = 2 to 99¬  put (there is a fld ("MyTitlelist " & x - 1) of cd 1) into hasField¬  if not hasField then exit repeat¬  set cursor to busy   ¬  put the number of lines of bg fld ("MyTitlelist " & x) of cd 1 into test¬  if test = 0 then exit repeat¬  put the number of lines of bg fld ("MyTitlelist " & x - 1) of cd 1 into temp¬  put temp + (line (x - 1) of gListStartIndex) into lowerBound¬  put lowerBound into line x of gListStartIndex¬end repeat¬¬-- Figure out how the selection is broken up between pages¬if the number of lines of gListStartIndex = 1 or the last item of selectedTitleNums <= line 2 of gListStartIndex then ¬  put selectedTitleNums into gMultiListSelections¬  put 1 into gListPage¬else¬  put xlate(selectedTitleNums,comma,return) into theSelectList¬  repeat with x = the number of lines of gListStartIndex down to 2¬    set cursor to busy  ¬    put line x of gListStartIndex into thisStartNum¬    put selectLines(theSelectList,1,"N",">" & thisStartNum) into thisPageSelections¬    put selectLines(theSelectList,1,"N","≤" & thisStartNum) into theSelectList¬    if word 1 of thisPageSelections <> empty then ¬      put xlate(array2Cnst(thisPageSelections,"-",thisStartNum),return,comma) into temp¬      if the last char of temp = comma then delete the last char of temp¬      put temp into line x of gMultiListSelections¬      put x into gListPage¬    end if¬  end repeat¬  ¬  if word 1 of theSelectList <> empty then ¬    put 1 into gListPage¬    put xlate(theSelectList,return,comma) into temp¬    if the last char of temp = comma then delete the last char of temp¬    put temp into line 1 of gMultiListSelections¬  end if¬end if¬¬wsSet wdID,"ComicTitles","Text", bg fld ("MyTitlelist " & gListPage) of cd 1¬put "TitleList " & (gListPage + 1) into nextListPage¬put true into nextIsDisabled¬if there is a bg fld (nextListPage) of cd 1 then¬  if bg fld (nextListPage) of cd 1 <> empty then put false into nextIsDisabled¬end if¬¬put (the number of lines of gListStartIndex > 1) into arrowsAreVisible¬¬wsSet wdID,"Properties","i5_Visible:" & arrowsAreVisible & return & "i6_Visible:" & arrowsAreVisible & return & "i7_Visible:" & arrowsAreVisible & return & "ComicTitles_Selection:" & line gListPage of gMultiListSelections & return & "i5_Disabled:" & (gListPage = 1) & return & "i6_Disabled:" & nextIsDisabled & return & "PartLabel_Text:" & "Part " & gListPage & return & "OK_Disabled:False" & return¬¬--end mouseUp